package com.example.service;

import com.example.bean.Page;
import com.example.bean.Product;
import com.example.dao.ProductDao;

import java.util.List;

/**
 * 商品
 */
public class ProductService {
    ProductDao productDao;

    public ProductService() {
        productDao = new ProductDao();
    }

    /**
     * 查询前十二个热门商品
     */
    public List<Product> selectHotProduct() {
        return productDao.selectHotProduct();
    }

    /**
     * 查询所有商品(分页)
     */
    public Page selectAllProductByPage(int pageNo, int pageSize) {
        Page page = new Page();
        List<Product> list = productDao.selectAllProductByPage(pageNo, pageSize);
        page.setList(list);
        page.setTotalRecords(productDao.selectAllProductCount()); // 设置总记录数
        page.setPageSize(pageSize);
        page.setPageNo(pageNo);
        return page;
    }

    /**
     * 模糊查询商品
     */
    public Page searchProductsByQuery(String query, int pageNo, int pageSize) {
        Page page = new Page();
        List<Product> list = productDao.searchProductsByQuery(query, pageNo, pageSize);
        page.setList(list);
        page.setTotalRecords(productDao.selectProductCountByQuery(query)); // 设置总记录数
        page.setPageSize(pageSize);
        page.setPageNo(pageNo);
        return page;
    }

    /**
     * 根据id查找商品详细信息
     */
    public Product selectProductInfoById(int id) {
        return productDao.selectProductInfoById(id);
    }
}
